package 连续子树组最大和;

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        long[] a = new long[n + 1];
        long[] f = new long[n + 1];
        for (int i = 1; i <= n; i++) {
            a[i] = in.nextInt();
            f[i] = Math.max(a[i], f[i - 1] + a[i]);
        }
        long res = Integer.MIN_VALUE;
        for (int i = 1; i <= n; i++) {
            res = Math.max(res, f[i]);
        }
        System.out.println(res);
    }
}
